package top.bulk.pit;

import lombok.SneakyThrows;

import java.text.SimpleDateFormat;

/**
 * SimpleDateFormat 格式化 使用的时候的一点小坑
 *
 * @author 散装java
 * @date 2024-08-27
 */
public class SimpleDateFormatPit {
    /**
     * 在使用 SimpleDateFormat 的时候，如果格式化的格式传入的不当，会引起时间错乱的问题
     */
    public static void main(String[] args) {
        test1();
        test2();
    }

    @SneakyThrows
    public static void test1() {
        String dateStr = "2024-12-29";
        String dateStr2 = "2024-10-29";
        // YYYY 是周年，时间日志格式化的格式填写错误，会导致意料之外的结果，造成程序异常
        SimpleDateFormat sf = new SimpleDateFormat("YYYY-MM-dd");
        System.out.println(dateStr + " ====> " + sf.parse(dateStr));
        System.out.println(dateStr2 + " ====> " + sf.parse(dateStr2));
    }

    @SneakyThrows
    public static void test2() {
        String dateStr = "2024-12-29";
        String dateStr2 = "2024-10-29";
        // YYYY 是周年
        SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd");
        System.out.println("test2  " + dateStr + " ====> " + sf.parse(dateStr));
        System.out.println("test2  " + dateStr2 + " ====> " + sf.parse(dateStr2));
    }
}
